IntelliJ IDEA 控制台中文乱码和错误: 非法字符: ‘\ufeff‘

您所在的位置:网站首页 idea server中文乱码 IntelliJ IDEA 控制台中文乱码和错误: 非法字符: ‘\ufeff‘

IntelliJ IDEA 控制台中文乱码和错误: 非法字符: ‘\ufeff‘

2023-07-06 13:42| 来源: 网络整理| 查看: 265

一、问题描述:

最近在 Windows 电脑上使用 IntelliJ IDEA 运行 Java 程序时,发现运行报错且控制台显示乱码。如下图1:

����: ���� GBK �IJ���ӳ���ַ� (0xAA) // 测试,一�? ^

有点蒙,这是啥意思?又报错又是乱码。

二、排查步骤: 1、先来解决乱码吧。把 IDEA 的编码都设置为 UTF-8。

如下图2:

不行,运行结果依旧。

2、网上查阅资料提示,需要把 Windows 的系统默认编码设置为 UTF-8。

设置步骤如下图3/4/5/6:

 

最后点【确定】按钮,重启电脑后再看看 IDEA 的运行效果。

如下图7:

OK,爽,不错。终于显示中文了。

但是,非法字符是什么意思?

错误: 非法字符: '\ufeff'

3、网上查阅资料发现,IDEA 需要设置文件的创建格式为 NO BOM。 Create UTF-8 Files: with NO BOM

UTF-8 NO BOM 含义:不包含特殊的异常字符

UTF-8 BOM 含义:会包含特殊的隐藏字符,会导致 IDEA 运行失败。

具体二者概念请去大海上浪一把了解下。

上面显示:【错误:非法字符:‘\ufeff’】就是因为文件编码格式为 UTF-8 BOM,携带了非法字符导致 IDEA 无法识别。

修改方式,如下图8:

 但是,修改后,运行代码还是一样报错。

那,有没有可能,当前项目中的 Java 代码已经是 UTF-8 BOM 格式的了,所以导致运行报错呢?

4、更改当前 Java 文件的编码格式为 UTF-8 NO BOM。

在电脑桌面新建文本文档,然后把 Java 文件中的代码全选复制到文本文档中,调整编码格式为 UTF-8 NO BOM,再保存,重命名文件名和后缀,粘贴替换 IDEA 中的 Java 文件。

如下图9:

再次运行,看看效果。

 yes,终于正常了。

 yes,终于正常了。

 yes,终于正常了。

如下图10:

最后,再对比下编码转换前后的差异。

如下图11:

 确实,之前一直报错的 Java 代码编码格式是 UTF-8 BOM,转换为 UTF-8 NO BOM 后就好了。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3